﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WpfSnqkGasAnalysis.Model;

namespace WpfSnqkGasAnalysis.IData
{
    /// <summary>
    /// 数据接口；数据字典
    /// </summary>
    /// 创建时间：2022-11-29 17:34:27。作者：王浩力
    public interface ISource_dictDAL
    {
        /// <summary>
        /// 根据主键获取一条
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        /// 创建时间：2022-12-1 16:23:42。作者：王浩力
        Source_dict Get(long id);

        /// <summary>
        /// 新增数据
        /// </summary>
        /// <param name="source_Dict"></param>
        /// <returns></returns>
        /// 创建时间：2022-11-29 17:34:27。作者：王浩力
        Result Add(Source_dict source_Dict);

        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="source_Dict"></param>
        /// <returns></returns>
        /// 创建时间:2022-11-29 17:35:32。作者：王浩力
        Result Update(Source_dict source_Dict);

        /// <summary>
        /// 修改状态
        /// </summary>
        /// <param name="id"></param>
        /// <param name="stat"></param>
        /// <returns></returns>
        /// 创建时间：2022-11-29 17:54:32。作者：王浩力
        Result UpdateStat(long id, byte? stat);

        /// <summary>
        /// 物理删除。删除前请检查是否被使用
        /// </summary>
        /// <param name="id">主键</param>
        /// <returns></returns>
        /// 创建时间：2022-11-30 10:20:51。作者：王浩力
        Result Delete(long id);

        /// <summary>
        /// 获取分组下所有项
        /// </summary>
        /// <param name="groupId">分组id</param>
        /// <param name="stat">数据状态</param>
        /// <returns></returns>
        /// 创建时间 ：2022-11-29 17:54:24。作者：王浩力
        List<Source_dict> GetList(string groupId, byte? stat);

        /// <summary>
        /// 查询所有记录
        /// </summary>
        /// <returns></returns>
        /// 创建时间：2022-11-30 11:05:21。作者：王浩力
        List<Source_dict> GetAll();

    }
}
